
import axios from 'axios';

// token的消息头
const TOKEN_HEADER = 'token';

// 创建axios对象
const request = axios.create({
	baseURL: import.meta.env.VITE_APP_API_URL,
});


// ================================= 请求拦截器 =================================

request.interceptors.request.use(
	(config) => {
		// 在发送请求之前消息头加入token token

		return config;
	},
	(error) => {
		// 对请求错误做些什么
		return Promise.reject(error);
	}
);

// ================================= 响应拦截器 =================================

// 添加响应拦截器
request.interceptors.response.use(
	(response) => {
		// 2xx 范围内的状态码都会触发该函数。
		// 对响应数据做点什么
		return response;
	},
	(error) => {
		// 超出 2xx 范围的状态码都会触发该函数。
		// 对响应错误做点什么
		return Promise.reject(error);
	}
);

// ================================= 对外提供请求方法：通用请求，get， post,  =================================

/**
 * get请求
 */
export const getRequest = (url, params) => {
	return request({ url, method: 'get', params });
};

/**
 * post请求
 */
export const postRequest = (url, data) => {
	return request({
		data,
		url,
		method: 'post',
	});
};





